Skip to content

Add AVX-512 kernels (#850)#850

Open
terrelln wants to merge 3 commits into
facebook:devfrom
terrelln:export-D109893567
Open

Add AVX-512 kernels (#850)#850
terrelln wants to merge 3 commits into
facebook:devfrom
terrelln:export-D109893567

Conversation

@terrelln

@terrelln terrelln commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Summary:

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their generated lookup tables, and registers them with _select(), the header externs, and the kernel test suite.

Reviewed By: kevinjzhang

Differential Revision: D109893567

@meta-codesync

meta-codesync Bot commented Jun 29, 2026

Copy link
Copy Markdown

@terrelln has exported this pull request. If you are a Meta employee, you can view the originating Diff in D109893567.

terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 59a4384 to 0380029 Compare June 29, 2026 18:32
@meta-codesync meta-codesync Bot changed the title Add AVX-512 kernels Add AVX-512 kernels (#850) Jun 29, 2026
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 0380029 to 499e104 Compare June 29, 2026 18:36
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 499e104 to 22bbdbb Compare June 29, 2026 18:43
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 22bbdbb to fcfe62d Compare June 29, 2026 19:01
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from fcfe62d to abcf095 Compare June 29, 2026 19:51
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 29, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the Huffman Pivoted encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from abcf095 to 675c258 Compare June 29, 2026 19:56
@terrelln terrelln closed this Jun 29, 2026
@terrelln terrelln reopened this Jun 30, 2026
terrelln added a commit to terrelln/openzl that referenced this pull request Jun 30, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 675c258 to b078ca3 Compare June 30, 2026 21:13
terrelln added a commit to terrelln/openzl that referenced this pull request Jul 16, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from b078ca3 to 8c65a79 Compare July 16, 2026 15:45
terrelln added a commit to terrelln/openzl that referenced this pull request Jul 16, 2026
Summary:
Pull Request resolved: facebook#850

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 8c65a79 to 020ae98 Compare July 16, 2026 15:50
@terrelln
terrelln force-pushed the export-D109893567 branch from 020ae98 to 1c6f84d Compare July 23, 2026 21:55
terrelln added 3 commits July 23, 2026 15:30
Summary:

Canonical Huffman trees always emit shallower leaves left of deeper leaves. Therefore these methods are not needed, and are dead code.

Differential Revision: D113463813
Summary:

Adds `scripts/gen_pivco_huffman_tables.py`, which renders the generated lookup-table headers consumed by the architecture-specific kernels (x86, neon, avx512). It is checked in ahead of the per-architecture kernels that include its output.

Reviewed By: kevinjzhang

Differential Revision: D109893569
Summary:

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Reviewed By: kevinjzhang

Differential Revision: D109893567
@terrelln
terrelln force-pushed the export-D109893567 branch from 1c6f84d to a52f111 Compare July 23, 2026 22:31
terrelln added a commit to terrelln/openzl that referenced this pull request Jul 23, 2026
Summary:

Adds the AVX-512 implementations of the PivCo-Huffman encode and decode kernels and their `generated` lookup tables, and registers them with `_select()`, the header externs, and the kernel test suite.

Reviewed By: kevinjzhang

Differential Revision: D109893567
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant